<script type="text/javascript">
    $j(function(){
        <?php
            $this->Validador->setFormulario('cierreCaja');
            $this->Validador->setRules('fecha', array('required' => array('value' => true)));
            $this->Validador->setRules('usuario', array('required' => array('value' => true)));
            $this->Validador->setRules('caja', array('required' => array('value' => true)));
            $this->Validador->setRules('nro_fac_ini', array('required' => array('value' => true)));
            $this->Validador->setRules('nro_fac_fin', array('required' => array('value' => true)));
            $this->Validador->setRules('nro_con_ini', array('required' => array('value' => true)));
            $this->Validador->setRules('nro_con_fin', array('required' => array('value' => true)));
            $this->Validador->printScript();
        ?>

        $j("form#cierreCaja").tooltip({
            show: true,
            hide: true
	});
        
        $j("form#cierreCaja").steps({
            bodyTag: "div",
            transitionEffect: 3,
            transitionEffectSpeed: 500,
            labels: {
                previous: 'Anterior',
                next: 'Siguiente',
                finish: 'Terminar',
            },
            onStepChanging: function (event, currentIndex, newIndex) {
                // Permitir retroceder incluso si la pestana actual tiene campos invalidos
                if (currentIndex > newIndex)
                    return true;
                // Prohibir la supresión del paso "Advertencia" si el usuario es joven
                /*if (newIndex === 3 && Number($j("#age").val()) < 18)
                    return false;*/
                
                var form = $j(this);
                // Limpiar si el usuario va hacia atras
                // Eliminar estilos de error
                if (currentIndex < newIndex) {
                    $j(".body:eq(" + newIndex + ") label.error", form).remove();
                    $j(".body:eq(" + newIndex + ") .error", form).removeClass("error");
                }
                // Deshabilitar la validacion en campos que estan ocultos o deshabilitados
                form.validate().settings.ignore = ":disabled,:hidden";
                // Iniciar validacion; Prevenir ir hacia adelante si es falso
                return form.valid();
            },
            onStepChanged: function (event, currentIndex, priorIndex) {
                var form = $j(this);
                var paso = $j("h1.title:eq(" + currentIndex + ")", form).attr('titulo');
                $j('div#dialogoCierreCaja').dialog('option', 'title', 'Cierre de Caja: ' + paso);
                // Reprimir (saltar) paso "Advertencia" si el usuario tiene la edad suficiente
                /*if (currentIndex === 2 && Number($j("#age").val()) >= 18)
                    $j(this).steps("next");*/
                // Reprimir (saltar) paso "Advertencia" si el usuario tiene la edad suficiente y quiere retroceder
                /*if (currentIndex === 2 && priorIndex === 3)
                    $j(this).steps("previous");*/
            },
            onFinishing: function (event, currentIndex) {
                var form = $j(this);
                // Deshabilitar la validacion en campos que estan deshabilitados
                // En este punto, se recomienda hacer un control general (ignorando los campos deshabilitados)
                form.validate().settings.ignore = ":disabled";
                // Iniciar validacion; Prevenir el envio del formulario si es falso
                return form.valid();
            },
            onFinished: function (event, currentIndex) {
                $j.ajax({
                    url: 'CierreCajas/guardar',
                    type: 'POST',
                    data: $j(this).serialize(),
                    success: function(data) {
                        if (data == '1') {
                            $j.fn.mensajes(dialogoAvisos, '', 'Registro guardado exitosamente');
                            $j('div#dialogoCierreCaja').dialog('close');
                            setTimeout(function(){
                                location.reload();
                            }, 2000);
                        } else
                            $j.fn.mensajes(dialogoAvisos, '', 'Ocurrio un problema, favor intentelo de nuevo');
                    }
                });
            }
        });
        
        $j('form#cierreCaja input#fecha').focus();
    });
</script>
<?php
    $titulo = null;
    $total = 0;
    echo $this->Formulario->formulario('cierreCaja');
    echo $this->Formulario->inputoculto('punto_id', $punto_id);
?>
<h1 titulo="Datos B&aacute;sicos">Paso</h1>
<div style='height: 295px; width: 95%; left: 0; overflow-y: auto;'>
    <table border="0" width="100%">
        <tr>
            <th width="130px">Fecha</th>
            <td width="230px"><?php echo $this->Formulario->input('fecha', 1, 'fecha', 'inputn input_reg', 1, 12, $this->Interfaz->fechatime($fecha, 'F'), 1, 0); ?></td>
            <th width="130px">Usuario</th>
            <td><?php echo $this->Formulario->input('usuario', 1, 'todo', 'inputn input_reg', 1, 100, $this->Session->read('username'), 1, 0); ?></td>
        </tr>
        <tr>
            <th>Caja</th>
            <td><?php echo $this->Formulario->input('caja', 1, 'todo', 'inputn input_reg', 1, 255, $nombrePunto, 1, 0); ?></td>
        </tr>
        <tr>
            <th>Nro Factura Inicial</th>
            <td><?php echo $this->Formulario->input('nro_fac_ini', 1, 'todo', 'inputn input_cierre', 1, 30, $infoFac[0]['min_fac'], 1, 0); ?></td>
            <th>Nro Factura Final</th>
            <td><?php echo $this->Formulario->input('nro_fac_fin', 1, 'todo', 'inputn input_cierre', 1, 30, $infoFac[0]['max_fac'], 1, 0); ?></td>
        </tr>
        <tr>
            <th>Nro Control Inicial</th>
            <td><?php echo $this->Formulario->input('nro_con_ini', 1, 'todo', 'inputn input_cierre', 1, 30, $infoFac[0]['min_con'], 1, 0); ?></td>
            <th>Nro Control Final</th>
            <td><?php echo $this->Formulario->input('nro_con_fin', 1, 'todo', 'inputn input_cierre', 1, 30, $infoFac[0]['max_con'], 1, 0); ?></td>
        </tr>
    </table>
    <table border="0" width="100%">
        <?php if(empty($data)) { ?>
        <tr>
            <td>Observacion</td>
            <td><?php echo $this->Formulario->input('observacion_caja', 2, 'textarea', 'inputn', 0, 300, '', 0, 0, 'nada', '', array('cols' => 90, 'rows' => 2)); ?></td>
        </tr>
        <?php } ?>
    </table>
    <?php if($punto_id != $this->Session->read('punto_id')){ ?>
    <div style="margin-top: 50px; font-size: 25px; font-weight: bold; width: 100%; text-align: center;">
        SE REALIZAR&Aacute; EL CIERRE DE LA <span style="color: #ff3111;"><?php echo $nombrePunto; ?></span>
        <br/><?php $fechaCierre = $fecha; echo "DEL D&Iacute;A {$this->Interfaz->diaSemana($fechaCierre)}: $fechaCierre";  ?>
    </div>
    <?php } ?>
</div>
<?php
    $cant = 1;
    if(!empty($data)) {
        foreach ($data as $indice => $valor) {
            $formapago = $valor[0]['formapago'];
            if(in_array($valor[0]['tipo_pago'], $listaFormasPago))
                $valor[0]['formapago'] = 'TARJETA';
            elseif($valor[0]['tipo_pago'] == 1)
                $valor[0]['formapago'] = 'EFECTIVO';
            else
                $valor[0]['formapago'] = $valor[0]['formapago'];
            
            if(!empty($valor[0]['referencia'])) {
                if(strlen($valor[0]['referencia']) == 25)
                    $valor[0]['referencia'] = $this->Interfaz->recortar_documento($valor[0]['referencia'], 0, 3, 6);
                else
                    $valor[0]['referencia'] = $valor[0]['referencia'];
            } else 
                $valor[0]['referencia'] = '-';
            
            if($valor[0]['formapago'] != $titulo) {
                if(!empty($titulo) && ($valor[0]['formapago'] != $titulo)) {
?>
                        </tbody>
                        <tr>
                            <th class='derecha'><?php echo "TOTAL: {$this->Formulario->miles($total)}"; ?></th>
                        </tr>
                        </table>
                        <span>Informaci&oacute;n de <?php echo ucwords(strtolower($titulo)); ?> verificada <?php echo $this->Formulario->checkbox("confirmar_$cant", false, array('value' => $total, 'class' => 'confirmar')); ?></span>
                    </div>
<?php
                    $total = 0;
                    $cant++;
                }
                
                if(in_array($valor[0]['tipo_pago'], $listaFormasPago))
                    $titulo = 'TARJETA';
                elseif($valor[0]['tipo_pago'] == 1)
                    $titulo = 'EFECTIVO';
                else
                    $titulo = $valor[0]['formapago'];
?>
                <h1 titulo='<?php echo $titulo; ?>'>Paso</h1>
                    <div style='height: 295px; width: 95%; left: 0;'>
                        <table style='width: 100%;' class='tabla-dialogo tabla-scroll'>
                            <thead>
                                <tr>
                                    <th width="135">N&Uacute;MERO</td>
                                    <th width="195">DENOMINACI&Oacute;N</td>
                                    <th width="290">BANCO</td>
                                    <!--th width="75px">COMISI&Oacute;N</td>
                                    <th width="50px">ISLR</td-->
                                    <th width="140">MONTO</td>
                                    <!--th width="103px">TOTAL</td-->
                                </tr>
                            <thead>
                            <tbody style="height: 270px; overflow-y: scroll !important;">
            <?php } ?>
                                <tr style="display: flex;">
                                    <td width="135" class="centro"><?php echo $valor[0]['referencia']; ?></td>
                                    <td width="196"><?php echo $formapago; ?></td>
                                    <td width="292" title="<?php echo $valor[0]['banco']; ?>" class="<?php echo (!empty($valor[0]['banco'])) ? 'izquierda' : 'centro'; ?>" style="display: inline-block; text-overflow: ellipsis; white-space: nowrap; overflow: hidden;"><?php echo $valor[0]['banco'] = (!empty($valor[0]['banco'])) ? $valor[0]['banco'] : '-'; ?></td>
                                    <!--td width="75px" class="derecha"><?php //echo $this->Formulario->miles($valor[0]['monto_ret'] = (!empty($valor[0]['monto_ret'])) ? $valor[0]['monto_ret'] : 0); ?></td>
                                    <td width="50px" class="derecha"><?php //echo $this->Formulario->miles($valor[0]['monto_ret_islr'] = (!empty($valor[0]['monto_ret_islr'])) ? $valor[0]['monto_ret_islr'] : 0); ?></td-->
                                    <td width="128" class="derecha"><?php echo $this->Formulario->miles($valor[0]['monto'] = (!empty($valor[0]['monto'])) ? $valor[0]['monto'] : 0); ?></td>
                                    <!--td width="90px" class="derecha"><?php //echo $this->Formulario->miles($subtotal = ($valor[0]['monto'] - ($valor[0]['monto_ret'] + $valor[0]['monto_ret_islr']))); ?></td-->
                                </tr>
    <?php
            $total += $valor[0]['monto'];
        }
    ?>
                            </tbody>
                            <tr>
                                <th class='derecha'><?php echo "TOTAL: {$this->Formulario->miles($total)}"; ?></th>
                            </tr>
                            <tr>
                                <td>Observacion</td>
                                <td><?php echo $this->Formulario->input('observacion_caja', 2, 'textarea', 'inputn', 0, 300, '', 0, 0, 'nada', '', array('cols' => 90, 'rows' => 2)); ?></td>
                            </tr>
                        </table>
                        <span>Informaci&oacute;n de <?php echo ucwords(strtolower($titulo)); ?> verificada <?php echo $this->Formulario->checkbox("confirmar_$cant", false, array('value' => $total, 'class' => 'confirmar')); ?></span>
                    </div>
<?php
    }
    /*if(!empty($dataCobranza)){
        $total = 0;
        $titulo = null;
?>
        <h1 titulo="Cobranza">Paso</h1>
        <div style='height: 295px; width: 95%; left: 0;'>
            <table style='width: 100%;' class='tabla-dialogo tabla-scroll'>
                <thead>
                    <tr>
                        <th width="135">N&Uacute;MERO</td>
                        <th width="195">DENOMINACI&Oacute;N</td>
                        <th width="290">BANCO</td>
                        <th width="140">MONTO</td>
                    </tr>
                <thead>
                <tbody style="height: 270px; overflow-y: scroll !important;">
<?php
        foreach ($dataCobranza as $indice => $valor) {
            if($titulo != $valor[0]['formapago']) {
?>
                    <tr class="detalleCobranza" for_pag="<?php echo strtolower(str_replace('.', '', str_replace(' ', '_', $valor[0]['formapago']))); ?>" style="display: flex;">
                        <td width="617"><?php echo $valor[0]['formapago']; ?></td>
                        <td width="123" class="derecha"><?php echo $this->Formulario->miles($totalesCobranza[$valor[0]['formapago']]); ?></td>
                    </tr>
<?php
                $titulo = $valor[0]['formapago'];
            }
            
            if(!empty($valor[0]['referencia'])) {
                if(strlen($valor[0]['referencia']) == 25)
                    $valor[0]['referencia'] = $this->Interfaz->recortar_documento($valor[0]['referencia'], 0, 3, 6);
                else
                    $valor[0]['referencia'] = $valor[0]['referencia'];
            } else 
                $valor[0]['referencia'] = '-';
?>
                    <tr class="tr_<?php echo strtolower(str_replace('.', '', str_replace(' ', '_', $valor[0]['formapago']))); ?>" style="display: none;">
                        <td width="132" class="centro"><?php echo $valor[0]['referencia']; ?></td>
                        <td width="192"><?php echo $valor[0]['formapago']; ?></td>
                        <td width="282" title="<?php echo $valor[0]['banco']; ?>" class="<?php echo (!empty($valor[0]['banco'])) ? 'izquierda' : 'centro'; ?>" style="display: inline-block; text-overflow: ellipsis; white-space: nowrap; overflow: hidden;"><?php echo $valor[0]['banco'] = (!empty($valor[0]['banco'])) ? $valor[0]['banco'] : '-'; ?></td>
                        <td width="125" class="derecha"><?php echo $this->Formulario->miles($valor[0]['monto'] = (!empty($valor[0]['monto'])) ? $valor[0]['monto'] : 0); ?></td>
                    </tr>
<?php
            $total += $valor[0]['monto'];
        }
?>
                </tbody>
                <tr>
                    <th class='derecha'><?php echo "TOTAL: {$this->Formulario->miles($total)}"; ?></th>
                </tr>
            </table>
            <span>Informaci&oacute;n de Cobranza verificada <?php echo $this->Formulario->checkbox("confirmar_99999", false, array('value' => $total, 'class' => 'confirmar')); ?></span>
        </div>
<?php
    }*/
    echo $this->Formulario->inputoculto('cant', $cant);
    echo $this->Formulario->formulario();
?>
<script type='text/javascript'>
    $j('#cierreCaja').validate();
    $j('form#cierreCaja input.confirmar').each(function(){
        $j(this).rules('add', { required: true });
    });
    
    //BOTON QUE DESPLIEGA EL DETALLE DE LOS INSTRUMENTOS DE PAGO USADOS EN COBRANZA
    $j('form#cierreCaja tr.detalleCobranza').click(function(e){
        e.preventDefault();
        e.stopImmediatePropagation();
        
        var for_pag = $j(this).attr('for_pag');

        if($j('form#cierreCaja tr.tr_' + for_pag + ':first').css('display') == 'none')
            $j('form#cierreCaja tr.tr_' + for_pag).css('display', 'flex');
        else
            $j('form#cierreCaja tr.tr_' + for_pag).css('display', 'none');
    });
</script>